var prefix = "/jzweb/trackDrawJiangXi";
var isDrawing = null; // 标记是否正在进行抽签

let falg = false;

$(function() {
    load();
});

$(document).ready(function() {
    lottery()
});

function load() {
    $('#exampleTable')
        .bootstrapTable(
            {
                method : 'get', // 服务器数据的请求方式 get or post
                url : prefix + '/trackList', // 服务器数据的加载地址
                //	showRefresh : true,
                //	showToggle : true,
                //	showColumns : true,
                iconSize : 'outline',
                toolbar : '#exampleToolbar',
                theadClasses: "thead-dark",
                striped : true, // 设置为true会有隔行变色效果
                dataType : "json", // 服务器返回的数据类型
                // pagination : true, // 设置为true会在底部显示分页条
                singleSelect : false, // 设置为true将禁止多选
                // contentType : "application/x-www-form-urlencoded",
                // //发送到服务器的数据编码类型
                // pageSize : 10, // 如果设置了分页，每页数据条数
                // pageNumber : 1, // 如果设置了分布，首页页码
                //search : true, // 是否显示搜索框
                showColumns : false, // 是否显示内容下拉框（选择显示的列）
                // sidePagination : "server", // 设置在哪里进行分页，可选值为"client" 或者 "server"
                queryParamsType : "",
                // //设置为limit则会发送符合RESTFull格式的参数
                queryParams : function(params) {
                    return {
                        //说明：传入后台的参数包括offset开始索引，limit步长，sort排序列，order：desc或者,以及所有列的键值对
                        pageNumber : params.pageNumber,
                        pageSize : params.pageSize,
                        unitName:$('#unitName').val(),
                        // username:$('#searchName').val()
                    };
                },
                // //请求服务器数据时，你可以通过重写参数的方式添加一些额外的参数，例如 toolbar 中的参数 如果
                // queryParamsType = 'limit' ,返回参数必须包含
                // limit, offset, search, sort, order 否则, 需要包含:
                // pageSize, pageNumber, searchText, sortName,
                // sortOrder.
                // 返回false将会终止请求
                responseHandler : function(res){
                    if(res.code !== '0') {
                        layer.msg(res.msg);
                        return false
                    }
                    isDrawing = res.data.hasDraw
                    return {
                        "rows": res.data.trackDrawDOList //数据
                    };
                },
                columns : [
                    {
                        field : 'unitName',
                        title : '参赛院校'
                    },
                    {
                        field : 'name',
                        title : 'B赛项',
                        class : 'trackB',
                        formatter : function(value, row, index) {
                            if(isDrawing) {
                                return  value
                            }
                            return '-'
                        }
                    },
                    {
                        field : 'name2',
                        title : 'C赛项',
                        class : 'trackC',
                        formatter : function(value, row, index) {
                            if(isDrawing) {
                                return  value
                            }
                            return '-'
                        }
                    },
                    {
                        field : 'name3',
                        title : 'D赛项',
                        class : 'trackD',
                        formatter : function(value, row, index) {
                            if(isDrawing) {
                                return  value
                            }
                            return '-'
                        }
                    },
                ]
            });
}

function reLoad() {
    $('#exampleTable').bootstrapTable('refresh');
}

function add() {
    layer.open({
        type : 2,
        title : '增加',
        maxmin : true,
        shadeClose : false, // 点击遮罩关闭层
        area : [ '800px', '520px' ],
        content : prefix + '/add' // iframe的url
    });
}

function edit(id) {
    layer.open({
        type : 2,
        title : '编辑',
        maxmin : true,
        shadeClose : false, // 点击遮罩关闭层
        area : [ '800px', '520px' ],
        content : prefix + '/edit/' + id // iframe的url
    });
}


//导出
function downExcelModelFile() {
    layer.confirm('您确定要导出吗？', {
        btn1:function(index){
            if(!isDrawing) {
                layer.msg('请先完成抽签')
                layer.close(index);
                return
            }
            try {
                window.location.href = prefix +"/downloadImportTemplate";
                layer.close(index)
            }catch (e) {
                layer.msg('导出失败')
            }

        }
    });


}

// 抽签请求
function trackDrawCreate() {
    $.ajax({
        type : "get",
        url : prefix +"/trackDrawJiangXiList",
        async : false,
        error : function(request) {
            parent.layer.alert(request);
        },
        success : function(res) {
            if (res.code === '0') {
                $('#exampleTable').bootstrapTable('load',res.data)
            } else {
                parent.layer.alert(res.msg)
            }

        }
    });
}

// 抽签
function lottery() {

    // 点击按钮进行随机抽签
    $('#drawButton').click(function() {

        if(falg) {
            return layer.msg('抽签中')
        }


        let rows = $('#exampleTable').bootstrapTable('getData'); // 获取表格数据
        //b选手
        let placeNum = []
        if (rows.length === 0)  return layer.msg('暂无选手信息')
        for (let i = 0; i < rows.length; i++) {
            placeNum.push(rows[i].name)
            placeNum.push(rows[i].name2)
            placeNum.push(rows[i].name3)

        }
        //表格开始滚动

        isDrawing = true
        falg = true
        $(".trackB").each(function (k,v){
            if(k !==0  ) {
                let text = ''
                for (let i = 0; i < placeNum.length; i++) {
                    text += '<div class="scrolling-text">' + placeNum[i] + '</div>';
                }
                $(v).html(`<div class="scrolling-container">${text}</div>`)
            }
        })
        $(".trackC").each(function (k,v){
            if(k !==0 ) {
                let text = ''
                for (let i = 0; i < placeNum.length; i++) {
                    text += '<div class="scrolling-text">' + placeNum[i] + '</div>';
                }
                $(v).html(`<div class="scrolling-container">${text}</div>`)
            }
        })
        $(".trackD").each(function (k,v){
            if(k !==0) {
                let text = ''
                for (let i = 0; i < placeNum.length; i++) {
                    text += '<div class="scrolling-text">' + placeNum[i] + '</div>';
                }
                $(v).html(`<div class="scrolling-container">${text}</div>`)
            }
        })

        // 点击停止按钮结束抽签
        $('#stopButton').click(async function() {
            if(isDrawing) {
                if(falg) {
                    trackDrawCreate()
                    layer.msg('抽签完毕')
                }else {
                    layer.msg('抽签已完成')
                }
            }
            falg = false
        });
    });
}
